home *** CD-ROM | disk | FTP | other *** search
/ Chip 2011 November / CHIP_2011_11.iso / Programy / Inne / Gry / Carnage_Contest / scripts / CC Original / weapons / Uppercut.lua < prev    next >
Text File  |  2010-08-31  |  3KB  |  76 lines

  1. --------------------------------------------------------------------------------
  2. -- Weapon Uppercut
  3. -- Original Carnage Contest Weapon
  4. -- Script by DC, August 2009, www.UnrealSoftware.de
  5. --------------------------------------------------------------------------------
  6.  
  7. -- Setup Tables
  8. if cc==nil then cc={} end
  9. cc.uppercut={}
  10.  
  11. -- Load & Prepare Ressources
  12. cc.uppercut.gfx_wpn=loadgfx("weapons/uppercut.bmp")                        -- Weapon Image
  13. setmidhandle(cc.uppercut.gfx_wpn)
  14. cc.uppercut.sfx_attack=loadsfx("throw.ogg")                                -- Attack Sound
  15.  
  16. --------------------------------------------------------------------------------
  17. -- Weapon: uppercut
  18. --------------------------------------------------------------------------------
  19.  
  20. cc.uppercut.id=addweapon("cc.uppercut","Uppercut",cc.uppercut.gfx_wpn)    -- Add Weapon
  21.  
  22. function cc.uppercut.draw()                                                -- Draw
  23.     -- Decrease Timer (used for arm animation)
  24.     if weapon_timer>0.0 then
  25.         weapon_timer=weapon_timer-0.5
  26.     end
  27.     -- Draw
  28.     if getplayeraction(0)==0 then
  29.         setblend(blend_alpha)
  30.         setalpha(1)
  31.         setcolor(255,255,255)
  32.         setscale(-getplayerdirection(0),1)
  33.         setrotation(0)
  34.         drawimage(cc.uppercut.gfx_wpn,getplayerx(0)+getplayerdirection(0)*9,getplayery(0)+2-weapon_timer)
  35.     end
  36. end
  37.  
  38. function cc.uppercut.attack(attack)                                        -- Attack
  39.     if (weapon_shots<=0) then
  40.         if (attack==1) then
  41.             -- No more weapon switching!
  42.             useweapon(0)
  43.             playsound(cc.uppercut.sfx_attack)
  44.             weapon_shots=weapon_shots+1
  45.             -- Set timer for arm animation
  46.             weapon_timer=7
  47.             -- Collision (side)
  48.             col1=0
  49.             if collision(col5x5,getplayerx(0)+getplayerdirection(0)*20,getplayery(0)-3,0,1,0)==1 then
  50.                 if playercollision()~=0 and playercollision()~=playercurrent() then
  51.                     playerpush(playercollision(),getplayerdirection(0)*2,-10)
  52.                     playerdamage(playercollision(),30)
  53.                     playsound(sfx_splatter1)
  54.                     col1=playercollision()
  55.                     particle(p_ring,getplayerx(playercollision()),getplayery(playercollision()))
  56.                     particlecolor(255,0,0)
  57.                     blood(getplayerx(playercollision()),getplayery(playercollision()))
  58.                 end
  59.             end
  60.             -- Collision (top)
  61.             if collision(col20x20,getplayerx(0),getplayery(0)-30,0,1,0)==1 then
  62.                 if playercollision()~=0 and playercollision()~=playercurrent() and playercollision()~=col1 then
  63.                     playerpush(playercollision(),getplayerdirection(0)*2,-10)
  64.                     playerdamage(playercollision(),30)
  65.                     playsound(sfx_splatter1)
  66.                     particle(p_ring,getplayerx(playercollision()),getplayery(playercollision()))
  67.                     particlecolor(255,0,0)
  68.                     blood(getplayerx(playercollision()),getplayery(playercollision()))
  69.                 end
  70.             end
  71.             -- End Turn
  72.             endturn()
  73.         end
  74.     end
  75. end
  76.